const isProduction = process.env.NODE_ENV === 'production';
module.exports = {
    publicPath: isProduction ? './' : '/',
    outputDir: 'dist',
    productionSourceMap: false,
    filenameHashing: false,
    css: {
        loaderOptions: {
            less: {
                prependData: `
              
                `
            }
        },

    },
    pluginOptions: {
        apicloud: {
            id: '',
            appName: 'APP NAME', // APP名称
            appEntry: 'app_entry.html', // 生产APP入口
            outputDir: '../apicloud',
            pageConfigPath: './src/config/pages.ts', // 所有页面配置
            apps: {
                app: { // app 页面入口配置
                    build: true, // 是否参与编译
                    root: './src/pages/app', // 页面根目录
                    watchRule: /(.tsx)$/, // 监听文件规则
                    entryPattern: '**/*.tsx', // 入口文件规则
                    host: 'widget://dist/', // 页面访问域名
                    cache: false,
                    prefix: 'app',
                    inject: !isProduction,
                    template: isProduction ? 'public/prod.html' : 'public/dev.html' // 模板
                },
                h5: { // h5 页面入口配置
                    build: true, // 是否参与编译
                    pageConfigPath: './src/config/webs.ts',
                    root: './src/pages/web', // 页面根目录
                    watchRule: /(.tsx)$/, // 监听文件规则
                    entryPattern: '**/*.tsx', // 入口文件规则
                    host: 'widget://dist/', // 页面访问域名
                    cache: false,
                    prefix: 'h5',
                    inject: !isProduction,
                    template: isProduction ? 'public/prod.html' : 'public/dev.html' // 模板
                }
            }
        }
    },
    configureWebpack: () => {
        if (!isProduction) {
            return;
        }
        return {
            plugins: []
        };
    },
    chainWebpack: (config) => {

        if (!isProduction) {
            return;
        }

        config.module.rule('images').use('image-webpack-loader').loader('image-webpack-loader').options({
            bypassOnDebug: false,
            mozjpeg: {
                progressive: true,
                quality: 65
            },
            optipng: {
                enabled: false,
            },
            pngquant: {
                quality: [0.4, 0.7],
                speed: 4
            },
            gifsicle: {
                interlaced: false,
            },
        }).end();


    },
    devServer: {
        port: 8086,
        https: false,
        open: false,
        // proxy: {
        //     'V1': {
        //         target: "http://api.test.cn/api/",
        //         ws: true,
        //         changeOrigin: true,
        //         pathRewrite: {
        //             // '^/api': ''
        //         }
        //     }

        // },
    }
}